/*
 * Copyright (C) 2015 Zhang Rui <bbcallen@gmail.com>
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

/*
 * https://github.com/Bilibili/jni4android
 * This file is automatically generated by jni4android, do not modify.
 */

#ifndef J4A__ohos_media_codec_Codec__H
#define J4A__ohos_media_codec_Codec__H

#include "j4a/j4a_base.h"
#include <jni.h>
#include <stdbool.h>

jobject J4AC_ohos_media_codec_Codec__createDecoder(JNIEnv *env);
jobject J4AC_ohos_media_codec_Codec__createDecoder__catchAll(JNIEnv *env);
jobject J4AC_ohos_media_codec_Codec__createDecoder__asGlobalRef__catchAll(JNIEnv *env);

jboolean J4AC_ohos_media_codec_Codec__setVideoSurface(JNIEnv *env, jobject thiz, jobject surface);
jboolean J4AC_ohos_media_codec_Codec__setVideoSurface__catchAll(JNIEnv *env, jobject thiz, jobject surface);

jboolean J4AC_ohos_media_codec_Codec__setCodecFormat(JNIEnv *env, jobject thiz, jobject format);
jboolean J4AC_ohos_media_codec_Codec__setCodecFormat__catchAll(JNIEnv *env, jobject thiz, jobject format);

jboolean J4AC_ohos_media_codec_Codec__registerCodecListener(JNIEnv *env, jobject thiz, jobject listener);
jboolean J4AC_ohos_media_codec_Codec__registerCodecListener__catchAll(JNIEnv *env, jobject thiz, jobject listener);
void J4AC_ohos_media_codec_Codec__ICodecListener__onReadBuffer(JNIEnv *env, jobject thiz, jobject var1, jobject var2, jint var3);
void J4AC_ohos_media_codec_Codec__ICodecListener__onReadBuffer__catchAll(JNIEnv *env, jobject thiz, jobject var1, jobject var2, jint var3);
void J4AC_ohos_media_codec_Codec__ICodecListener__onError(JNIEnv *env, jobject thiz, jint var1, jint var2, jint var3);
void J4AC_ohos_media_codec_Codec__ICodecListener__onError__catchAll(JNIEnv *env, jobject thiz, jint var1, jint var2, jint var3);
jobject J4AC_ohos_media_codec_Codec__getBufferFormat(JNIEnv *env, jobject thiz, jobject buffer);
jobject J4AC_ohos_media_codec_Codec__getBufferFormat__catchAll(JNIEnv *env, jobject thiz, jobject buffer);
jobject J4AC_ohos_media_codec_Codec__getBufferFormat__asGlobalRef__catchAll(JNIEnv *env, jobject thiz, jobject buffer);
jboolean J4AC_ohos_media_codec_Codec__writeBuffer(JNIEnv *env, jobject thiz, jobject buffer, jobject info);
jboolean J4AC_ohos_media_codec_Codec__writeBuffer__catchAll(JNIEnv *env, jobject thiz, jobject buffer, jobject info);
jobject J4AC_ohos_media_codec_Codec__getAvailableBuffer(JNIEnv *env, jobject thiz, jlong timeout);
jobject J4AC_ohos_media_codec_Codec__getAvailableBuffer__catchAll(JNIEnv *env, jobject thiz, jlong timeout);
jobject J4AC_ohos_media_codec_Codec__getAvailableBuffer__asGlobalRef__catchAll(JNIEnv *env, jobject thiz, jlong timeout);
jboolean J4AC_ohos_media_codec_Codec__start(JNIEnv *env, jobject thiz);
jboolean J4AC_ohos_media_codec_Codec__start__catchAll(JNIEnv *env, jobject thiz);
jboolean J4AC_ohos_media_codec_Codec__stop(JNIEnv *env, jobject thiz);
jboolean J4AC_ohos_media_codec_Codec__stop__catchAll(JNIEnv *env, jobject thiz);
jboolean J4AC_ohos_media_codec_Codec__release(JNIEnv *env, jobject thiz);
jboolean J4AC_ohos_media_codec_Codec__release__catchAll(JNIEnv *env, jobject thiz);
int J4A_loadClass__J4AC_ohos_media_codec_Codec(JNIEnv *env);

#define J4A_HAVE_SIMPLE__J4AC_ohos_media_codec_Codec

#define J4AC_Codec__createDecoder J4AC_ohos_media_codec_Codec__createDecoder
#define J4AC_Codec__createDecoder__asGlobalRef__catchAll J4AC_ohos_media_codec_Codec__createDecoder__asGlobalRef__catchAll
#define J4AC_Codec__createDecoder__catchAll J4AC_ohos_media_codec_Codec__createDecoder__catchAll
#define J4AC_Codec__setVideoSurface J4AC_ohos_media_codec_Codec__setVideoSurface
#define J4AC_Codec__setVideoSurface__catchAll J4AC_ohos_media_codec_Codec__setVideoSurface__catchAll
#define J4AC_Codec__setCodecFormat J4AC_ohos_media_codec_Codec__setCodecFormat
#define J4AC_Codec__setCodecFormat__catchAll J4AC_ohos_media_codec_Codec__setCodecFormat__catchAll
#define J4AC_Codec__registerCodecListener J4AC_ohos_media_codec_Codec__registerCodecListener
#define J4AC_Codec__registerCodecListener__catchAll J4AC_ohos_media_codec_Codec__registerCodecListener__catchAll
#define J4AC_Codec__ICodecListener__onReadBuffer J4AC_ohos_media_codec_Codec__ICodecListener__onReadBuffer
#define J4AC_Codec__ICodecListener__onReadBuffer__catchAll J4AC_ohos_media_codec_Codec__ICodecListener__onReadBuffer__catchAll
#define J4AC_Codec__ICodecListener__onError J4AC_ohos_media_codec_Codec__ICodecListener__onError
#define J4AC_Codec__ICodecListener__onError__catchAll J4AC_ohos_media_codec_Codec__ICodecListener__onError__catchAll
#define J4AC_Codec__getBufferFormat J4AC_ohos_media_codec_Codec__getBufferFormat
#define J4AC_Codec__getBufferFormat__asGlobalRef__catchAll J4AC_ohos_media_codec_Codec__getBufferFormat__asGlobalRef__catchAll
#define J4AC_Codec__getBufferFormat__catchAll J4AC_ohos_media_codec_Codec__getBufferFormat__catchAll
#define J4AC_Codec__writeBuffer J4AC_ohos_media_codec_Codec__writeBuffer
#define J4AC_Codec__writeBuffer__catchAll J4AC_ohos_media_codec_Codec__writeBuffer__catchAll
#define J4AC_Codec__getAvailableBuffer J4AC_ohos_media_codec_Codec__getAvailableBuffer
#define J4AC_Codec__getAvailableBuffer__asGlobalRef__catchAll J4AC_ohos_media_codec_Codec__getAvailableBuffer__asGlobalRef__catchAll
#define J4AC_Codec__getAvailableBuffer__catchAll J4AC_ohos_media_codec_Codec__getAvailableBuffer__catchAll
#define J4AC_Codec__start J4AC_ohos_media_codec_Codec__start
#define J4AC_Codec__start__catchAll J4AC_ohos_media_codec_Codec__start__catchAll
#define J4AC_Codec__stop J4AC_ohos_media_codec_Codec__stop
#define J4AC_Codec__stop__catchAll J4AC_ohos_media_codec_Codec__stop__catchAll
#define J4AC_Codec__release J4AC_ohos_media_codec_Codec__release
#define J4AC_Codec__release__catchAll J4AC_ohos_media_codec_Codec__release__catchAll
#define J4A_loadClass__J4AC_Codec J4A_loadClass__J4AC_ohos_media_codec_Codec

#endif//J4A__ohos_media_codec_Codec__H
